package com.yunqiao.service.api.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 押金订单信息
 *
 * @author Crocutax
 * @company 今日速运
 * @email wangxw725@foxmail.com
 * @date 2019-04-11 18:54:10
 */
@TableName("tb_order_cash")
@Data
@ApiModel(value = "押金订单信息对象")
public class OrderCashEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @TableId
    @ApiModelProperty(value = "")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private String orderNumber;
    /**
     * 1:支付宝支付， 2：微信支付  3：余额支付
     */
    @ApiModelProperty(value = "1:支付宝支付， 2：微信支付  3：余额支付")
    private Integer type;
    /**
     * 货主ID
     */
    @ApiModelProperty(value = "货主ID")
    private Long userId;

    /**
     * 关联id
     */
    @ApiModelProperty(value = "关联id")
    private Long targetId;
    /**
     * 红包ID
     */
    @ApiModelProperty(value = "红包id")
    private Integer redId;
    /**
     * 1:押金支付
     */
    @ApiModelProperty(value = "1:押金支付")
    private Integer state;
    /**
     * 1：待支付， 2：已支付， 3：已拒绝
     */
    @ApiModelProperty(value = "1：待支付， 2：已支付， 3：已拒绝")
    private Integer status;
    /**
     * 价格
     */
    @ApiModelProperty(value = "价格")
    private BigDecimal price;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**
     * 软删除
     */
    @TableLogic
    @JsonIgnore
    @ApiModelProperty(value = "软删除")
    private Integer deleted;

}
